package dao

import (
	"time"
)

// 这是 PmsProductVerifyRecord 的全局公开dao对象，被service层调用!
var PmsProductVerifyRecordDao = pmsProductVerifyRecordDao{}

// 这是 pms_product_verify_record表 的实体类
type PmsProductVerifyRecord struct {
	CreateTime time.Time `json:"create_time" form:"create_time" v:"create_time"`
	Detail     string    `json:"detail" form:"detail" v:"detail"` // 反馈详情
	Id         int64     `json:"id" form:"id" v:"id"`
	ProductId  int64     `json:"product_id" form:"product_id" v:"product_id"` // 这是一个逻辑外键,关联pms_product(id)
	Status     int32     `json:"status" form:"status" v:"status"`
	VerifyMan  string    `json:"verify_man" form:"verify_man" v:"verify_man"` // 审核人

}

// 注意:这是 PmsProductVerifyRecord 的私有dao对象，只能在dao层内使用!
type pmsProductVerifyRecordDao struct {
	InsertTemplate func(arg PmsProductVerifyRecord) (int64, error)                               //插入一条记录
	UpdateTemplate func(arg PmsProductVerifyRecord) (int64, error)                               //更新一条记录
	DeleteTemplate func(id int64) (int64, error)                                                 `args:"id"`                         //根据传入的主键删除一条记录
	SelectTemplate func(id int64) (PmsProductVerifyRecord, error)                                `args:"id"`                         //根据传入的主键获取一条记录
	List           func(keyword string, pageNum, pageSize int) ([]PmsProductVerifyRecord, error) `args:"keyword,page_num,page_size"` //模糊分页查询
}

/*
// 这是 pms_product_verify_record 表的Postman测试参数
// 该结构体中的字段就是: 前后端交互的json字段!
type PmsProductVerifyRecordPostman struct {
create_time
detail
id
product_id
status
verify_man

}*/

// 这是 pms_product_verify_record 表的批量请求参数
type PmsProductVerifyRecordReq struct {
	List []PmsProductVerifyRecord `json:"list" form:"list"`
}
